package com.zhuiYun.project.api.userinfo.service;

import com.zhuiYun.project.api.login.entity.User;
import com.zhuiYun.project.common.response.CommonResult;

/**
 * @ClassName UserInfoService
 * @Description TODO 用戶信息业务层接口
 * @Author 赵笛
 * @Date 2023/4/10 14:00
 **/

public interface UserInfoService {
    /**
     * @Author 赵笛
     * @Description TODO 发送邮件验证码
     * @Date 2023/4/10 14:06
     * @Return com.zhuiYun.project.common.response.CommonResult
     * @param mail
     */
    CommonResult sendMailVerificationCode(String mail,Integer operationStatus);
    /**
     * @Author 赵笛
     * @Description TODO 校验验证码
     * @Date 2023/4/10 15:43
     * @Return com.zhuiYun.project.common.response.CommonResult
     * @param mail
     * @param vcode
     */
    CommonResult checkMailVerificationCode(String mail, String vcode);
    /**
     * @Author 赵笛
     * @Description TODO 修改当前用户信息
     * @Date 2023/4/10 18:42
     * @Return com.zhuiYun.project.common.response.CommonResult
     * @param user
     */
    CommonResult updateUserInfo(User user);
    /**
     * @Author 赵笛
     * @Description TODO 根据当前用户id查询收藏商品个数
     * @Date 2023/4/10 20:07
     * @Return com.zhuiYun.project.common.response.CommonResult
     * @param userId
     */
    CommonResult getCommodityCollectionCountByUserId(Integer userId);
    /**
     * @Author 赵笛
     * @Description TODO 根据当前用户id查询收藏diy个数
     * @Date 2023/4/11 8:53
     * @Return com.zhuiYun.project.common.response.CommonResult
     * @param userId
     */
    CommonResult getDiyCollectionCountByUserId(Integer userId);
    /**
     * @Author 赵笛
     * @Description TODO 根据当前用户查找浏览记录数量
     * @Date 2023/4/12 9:21
     * @Return com.zhuiYun.project.common.response.CommonResult
     * @param userId
     */
    CommonResult getUserHistoryCountByUserId(Integer userId);
}
